package com.ssm.service.interfaces;

import com.ssm.bean.Employee;

import java.util.List;

/**
 * Copyright: Copyright (c) 2018/1/2
 * Description:
 * CLASS_NAME: IEmployeeSV
 * PACKAGE_NAME: com.ssm.service.interfaces
 * version: v1.0.0
 * author: Jin Biao
 * date: 2018/1/2 19:05
 */

public interface IEmployeeSV {

    /** @method_name:
    * @param:
    * @description: 查询所有的员工信息,不包括部门信息
    * @create_user: Jin Biao
    * @create_date: 2018/1/2
    * @create_time: 19:12
    **/
    public List<Employee> getAllEmployee() throws Exception;

    /** @method_name:
    * @param:
    * @description: 关联查询，查询结果中含有员工所在的部门信息
    * @create_user: Jin Biao
    * @create_date: 2018/1/4
    * @create_time: 16:47
    **/
    public List<Employee> getAllEmployeeWithDept() throws Exception;

    /** @method_name:  saveEmployee
    * @param: Employee
    * @description: 保存员工信息
    * @create_user: Jin Biao
    * @create_date: 2018/1/26
    * @create_time: 10:38
    **/
    public void saveEmployee(Employee employee) throws Exception;

    /** @method_name:  checkEmployee
    * @param:  String empName
    * @description: 根据员工姓名查询员工
    * @create_user: Jin Biao
    * @create_date: 2018/1/30
    * @create_time: 16:40
    **/
    public boolean checkEmployee(String empName) throws Exception;

    /** @method_name:  getEmpById
    * @param:  int empId
    * @description: 根据员工id查询信息
    * @create_user: Jin Biao
    * @create_date: 2018/1/30
    * @create_time: 16:39
    **/
    Employee getEmpById(int empId) throws Exception;

    /** @method_name: updateEmployee
    * @param:  Employee employee
    * @description: 更新员工信息
    * @create_user: Jin Biao
    * @create_date: 2018/1/30
    * @create_time: 16:39
    **/
    void updateEmployee(Employee employee);

    /** @method_name: deleteEmpById
    * @param: int  empId
    * @description: 根据员工id删除员工
    * @create_user: Jin Biao
    * @create_date: 2018/1/30
    * @create_time: 16:38
    **/
    void deleteEmpById(int empId);

    /** @method_name:
    * @param:
    * @description: 批量删除员工
    * @create_user: Jin Biao
    * @create_date: 2018/1/30
    * @create_time: 16:38
    **/
    void deleteEmpBath(String [] empIds);
}
